//从@reduxjs/toollit依赖包中具名导入createSlice方法，该方法用来创建切片
import {createSlice} from '@reduxjs/toolkit'
/**
 * 调用createSlice创建切片,createSlice参数是一个配置对象,常见配置如下
 * name:命名空间:主要的作用是页面组件在发送通知对象type的值就会以name命名空间作为前缀couterNS/xx，作为模块的唯一标识
 * initState:存放的是状态机中状态的初始值
 * reducers:存放的是reducer计算函数，类似于vuex中的mutations
 */
const counterSlice=createSlice({
    name:'counterNS',
    initialState:{
        count:0
    },
    reducers:{
        /*
            参数1：为state对象
            参数2：为action对象
        */
        increment(state,action){
            console.log('------RTK中increment方法---------');
            state.count=state.count+1

        }
    }
})
//通过如下方式就可以将reducers中的方法变成一个通知对象，这个通知对象type值就是方法名
export const {increment}=counterSlice.actions
//将切片中的reducer默认导出
export default counterSlice.reducer
